package com.easyapi.common.utils;


import com.easyapi.common.enums.StatusCode;

/**
 * 返回工具类
 * @author liujunjie
 */
public class ResultUtils {

    /**
     * 成功,只设置返回数据
     * @param data
     * @param <T>
     * @return
     */
    public static <T> BaseResponse<T> success(T data) {
        return new BaseResponse<>(StatusCode.SUCCESS.getCode(), data, "ok");
    }


    /**
     * 成功带提示信息
     * @param data
     * @param message
     * @return
     * @param <T>
     */
    public static <T> BaseResponse<T> success(T data,String message) {
        return new BaseResponse<>(StatusCode.SUCCESS.getCode(), data, message);
    }
    /**
     * 失败
     * @param statusCode
     * @return
     */
    public static BaseResponse error(StatusCode statusCode) {
        return new BaseResponse<>(statusCode);
    }

    /**
     * 失败带数据
     * @param data
     * @param code
     * @param message
     * @return
     * @param <T>
     */
    public static<T> BaseResponse<T> error(T data ,int code, String message){
        return  new BaseResponse<T>(code,data,message);
    }

    /**
     * 失败
     *
     * @param code
     * @param message
     * @return
     */
    public static BaseResponse error(int code, String message) {
        return new BaseResponse(code, null, message);
    }

    /**
     * 失败
     *
     * @param statusCode
     * @return
     */
    public static BaseResponse error(StatusCode statusCode, String message) {
        return new BaseResponse(statusCode.getCode(), null, message);
    }
}
